package com.bistu.xiong.factory.data.helper;

import com.bistu.xiong.factory.data.DataSource;
import com.bistu.xiong.factory.data.RspCallback;
import com.bistu.xiong.factory.model.api.RspModel;
import com.bistu.xiong.factory.model.api.community.GetUserPostRspModel;
import com.bistu.xiong.factory.model.api.community.SendUserPostModel;
import com.bistu.xiong.factory.net.Network;
import com.bistu.xiong.factory.net.RemoteService;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.List;

import retrofit2.Call;

/**
 * Created by XiongXiaoJun on 2017/12/21.
 */

public class CommunityHelper {
    /**
     * 发帖的接口，异步的调用
     * @param model    传递一个帖子的Model进来
     * @param callback 成功与失败的接口回送
     */
    public static void sendUserPost(SendUserPostModel model, final DataSource.Callback<String> callback){
        // 调用Retrofit对我们的网络请求接口做代理
        RemoteService service = Network.remote();
        // 得到一个Call
        Call<RspModel<String>> call = service.sendUserPost(model.getMap());
        // 异步的请求
        call.enqueue(new RspCallback<String>(callback));
    }

    /**
     * 获取发帖的接口，异步的调用
     * @param callback 成功与失败的接口回送
     */
    public static void getAllUserPost(final DataSource.Callback<ArrayList<GetUserPostRspModel>> callback){
        // 调用Retrofit对我们的网络请求接口做代理
        RemoteService service = Network.remote();
        // 得到一个Call
        Call<RspModel<ArrayList<GetUserPostRspModel>>> call = service.getAllUserPost();
        // 异步的请求
        call.enqueue(new RspCallback<ArrayList<GetUserPostRspModel>>(callback));
    }

}
